<!DOCTYPE html>
<html lang="en">

<head>
  <meta charset="UTF-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Document</title>
</head>

<body>
  <script>
    function Parent() {
      this.a = 1
      this.b = [1, 2, this.a]
      this.c = { demo: 5 }
      this.show = function () {
        console.log(this.a, this.b, this.c.demo)
      }
    }

    function Child() {
      this.a = 2
      this.change = function () {
        this.b.push(this.a)
        this.a = this.b.length
        this.c.demo = this.a++
      }
    }

    Child.prototype = new Parent()
    var parent = new Parent()
    var child1 = new Child()
    var child2 = new Child()

    child1.a = 11
    child2.a = 12
    parent.show() // 1, [1, 2, 1], 5
    child1.show()
    child2.show()

    child1.change()
    child2.change()

    parent.show()
    child1.show()
    child2.show()
  </script>
</body>

</html>